iT邦幫忙

2025 iThome 鐵人賽

DAY 20
0
Security

醫療數據的資安挑戰與創新解決方案系列 第 20

病人同意分享紀錄 – 存取紀錄與審計

  • 分享至 

  • xImage
  •  

今天的學習目標是認識醫療資料共享過程中的「存取紀錄與審計」的重要性,理解除了病人同意之外,還必須記錄誰在什麼時間存取過紀錄,才能符合 HIPAA 等法規要求,並能透過程式模擬存取紀錄與透明查詢,確保醫療共享更安全合規。

一、理論重點

  1. 單純的「同意/拒絕」不足,必須要有 存取紀錄 (Audit Log)。
  2. 存取紀錄確保
  • 醫院、研究機構的每次操作都被紀錄。
  • 病人能查看誰存取了資料。
  • 防止「偷偷存取」與濫用病歷。
  1. 區塊鏈的不可竄改特性可確保紀錄無法被事後修改。

二、案例分享

美國 HIPAA(健康保險可攜與責任法案)規範醫療機構必須保留「誰在什麼時間存取病歷」的完整紀錄。曾有案例揭露,某醫院員工非法查閱名人病歷,事後正是透過審計追蹤紀錄才發現異常,並對涉事員工進行處分。這顯示審計與存取紀錄是保護病人隱私、落實責任追蹤的重要機制。

三、簡單程式示範

class ConsentWithLog:
    def __init__(self):
        self.consent = {}
        self.access_log = {}

    def give_consent(self, patient_id):
        self.consent[patient_id] = True
        print(f" 病人 {patient_id} 同意分享紀錄")

    def revoke_consent(self, patient_id):
        self.consent[patient_id] = False
        print(f" 病人 {patient_id} 撤回同意")

    def check_access(self, patient_id, requester):
        if self.consent.get(patient_id, False):
            result = "允許"
            print(f" {requester} 存取 {patient_id} 的紀錄 ")
        else:
            result = "拒絕"
            print(f" {requester} 存取 {patient_id} 的紀錄 ")

        # 寫入紀錄
        self.access_log.setdefault(patient_id, []).append((requester, result))

    def show_log(self, patient_id):
        print(f" 病人 {patient_id} 的存取紀錄:")
        for r, res in self.access_log.get(patient_id, []):
            print(f"  - 機構: {r} | 結果: {res}")

# ---- 測試流程 ----
contract = ConsentWithLog()
contract.give_consent("PatientA")
contract.check_access("PatientA", "Hospital")
contract.check_access("PatientA", "ResearchLab")
contract.revoke_consent("PatientA")
contract.check_access("PatientA", "InsuranceCompany")
contract.show_log("PatientA")

這段程式碼在原本病人同意機制上加上了「存取紀錄功能」。ConsentWithLog 類別除了管理病人是否同意 (self.consent) 外,還新增 self.access_log 來保存每次存取的結果。當 check_access 被呼叫時,會依病人是否同意決定「允許」或「拒絕」,並把請求人與結果一起記錄下來。最後透過 show_log 可以查詢特定病人的所有存取紀錄。測試流程中,PatientA 先同意分享,醫院與研究單位能存取;撤回後保險公司就被拒絕,最後列出的存取紀錄清楚顯示每次的操作結果,實現了可追蹤與透明化的存取控管。執行結果如下圖

https://ithelp.ithome.com.tw/upload/images/20250923/20169331ns0f8itUCN.png


上一篇
病人同意分享紀錄 – 智慧合約基礎
下一篇
雲端醫療服務介紹 – AWS 與 GCP 的應用
系列文
醫療數據的資安挑戰與創新解決方案24
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言